<?php
require_once("../conf/conf.inc.php");
require_once("class/Membre.class.php");
require_once("../lib/util.lib.php");
validerLogin();
$post = $_POST;

if (isset($post["action"]) && $post["action"] == "editer_membre"){
  $nb_membre = count($post["nom"]);
  for( $i = 0 ; $i < $nb_membre ; $i++ ){
    if($post["effacer"][$i] == "1"){
      if(Membre::effacerMembre($post["id"][$i]))
        echo "<span class='supprimer'>Le membre '{$post["nom"][$i]}, {$post["prenom"][$i]}' &agrave; &eacute;t&eacute; supprim&eacute;.</span><br />";
      else
        echo "<span class='erreur'>Erreur &agrave; l'ajout du membre '{$post["nom"][$i]}, {$post["prenom"][$i]}'.</span><br />";
    }//if effacer
    else{
      if(isEditValide($post,$i)){
            
        if ($post["id"][$i] == "new"){
          if(Membre::ajouterMembre($post["nom"][$i],
                            $post["prenom"][$i],
                            $post["courriel"][$i],
                            $post["membre"][$i],
                            $post["ext_tel"][$i]))
            echo "<span class='ajout'>Le membre '{$post["nom"][$i]}, {$post["prenom"][$i]}' &agrave; &eacute;t&eacute; ajout&eacute;.</span><br />";
          else
            echo "<span class='erreur'>Erreur &agrave; l'ajout du membre '{$post["nom"][$i]}, {$post["prenom"][$i]}'.</span><br />";
        }//ajouterMemebre
        else{
          if(Membre::modifierMembre($post["id"][$i],
                            $post["nom"][$i],
                            $post["prenom"][$i],
                            $post["courriel"][$i],
                            $post["membre"][$i],
                            $post["ext_tel"][$i]))
            echo "<span class='modification'>Le membre '{$post["nom"][$i]}, {$post["prenom"][$i]}' &agrave; &eacute;t&eacute; modifi&eacute;.</span><br />";
          else
            echo "<span class='erreur'>Erreur &agrave; la modification du membre '{$post["nom"][$i]}, {$post["prenom"][$i]}'.</span><br />";
          
        }//modifierMembre
      }//isEditValide
    }//else effacer
  }//for
}

$jsMembreArray = "Array(";
$users = Membre::getListeMembre();

foreach( $users as $user ){
  $jsMembreArray .= "Array('".$user["id"]."','".$user["nom"]."','".$user["prenom"]."','".$user["courriel"]."','".$user["membre"]."','".$user["ext_tel"]."'),";
}
if (!empty($users))
  $jsMembreArray = substr($jsMembreArray,0,strlen($jsMembreArray) - 1). ")";
else
  $jsMembreArray .= ");";

function isEditValide($post, $i){
  return $post["nom"][$i] != "undefined" && 
      $post["prenom"][$i] != "undefined" && 
      $post["courriel"][$i] != "@grics.qc.ca" &&
      ($post["ext_tel"][$i] == "0" 
        || is_numeric($post["ext_tel"][$i]));
}
?>
<html>
  <head>
    <title>Gestion des membres</title>
    <link type="text/css" rel="stylesheet" href="../style/admin.css" />
    
    <script type="text/javascript">
      var arr_membre = <?php echo $jsMembreArray ;?>;
        var row_style ="";
        if(navigator.userAgent.indexOf('MSIE') == -1)
          row_style = 'table-row' ;
        else
          row_style = 'block';
          
      function ajouterChamp(id,nom,prenom,courriel,membre,ext_tel,enabled){
        tbl = document.getElementById("tbl_membre").tBodies[0];
        modele_membre = document.getElementById("membre");
        nouveau_membre = tbl.rows[1].cloneNode(true);
        nouveau_membre.style.display = row_style;          
        tbl.appendChild(nouveau_membre);
        
        frm = document.getElementById("frmMembre");
        last = frm.elements['nom[]'].length -1;
        
        frm.elements['id[]'][last].value = id;
        frm.elements['nom[]'][last].value = nom;
        frm.elements['prenom[]'][last].value = prenom;
        frm.elements['courriel[]'][last].value = courriel;
        frm.elements['membre[]'][last].value = "1";
        if (membre == "1")
          frm.elements['membre[]'][last].checked = true;
        
        frm.elements['ext_tel[]'][last].value = ext_tel;
        
        frm.elements['nom[]'][last].disabled = !enabled;
        frm.elements['prenom[]'][last].disabled = !enabled;
        frm.elements['courriel[]'][last].disabled = !enabled;
        frm.elements['membre[]'][last].disabled = !enabled;
        frm.elements['ext_tel[]'][last].disabled = !enabled;
        frm.elements['id[]'][last].disabled = !enabled;
        frm.elements['effacer[]'][last].disabled = !enabled;
        
        if(id == "new"){
           //enlever le bouton modifier
          frm.elements['effacer[]'][last].nextSibling.style.display="none";
          nouveau_membre.className = "tr_nouveau";
        }
      
      }
      function modifier(frm,tr){
        tr.className = "tr_modifier";
        for(i = 0 ; i < tr.childNodes.length; i++){
          td = tr.childNodes[i];
          for(k = 0 ; k < td.childNodes.length; k++){
            if (td.childNodes[k].nodeType == 1){
              td.childNodes[k].disabled = false;
              if (td.childNodes[k].name == "effacer[]"){
                td.childNodes[k].value = 0;
              }//effacer
            }
          }
        }
      }
      
      function supprimer_nouveau(tr){
        tbl = document.getElementById("tbl_membre").tBodies[0];
        tbl.deleteRow(tr.rowIndex);
      }
      
      function supprimer(frm,tr,id){
        if(id.value == "new"){
          supprimer_nouveau(tr);
        }
        else{
          tr.className = "tr_supprimer";
          for(i = 0 ; i < tr.childNodes.length; i++){
            td = tr.childNodes[i];
            for(k = 0 ; k < td.childNodes.length; k++){
              if (td.childNodes[k].nodeType == 1){
                td.childNodes[k].disabled = false;
                if (td.childNodes[k].name == "effacer[]"){
                  td.childNodes[k].value = 1;
                }//effacer
              }//nodeType
            }//for k
          }// for i
        }
      }
      
      function initChamps(){
        if (arr_membre.length == 0){
          ajouterChamp('new','','','@','',0,true);
        }
        else{
          for (i = 0 ; i < arr_membre.length ; i++){
            ajouterChamp(arr_membre[i][0],arr_membre[i][1],arr_membre[i][2],arr_membre[i][3],arr_membre[i][4],arr_membre[i][5],false);
          }
        }
      }
      function validerFormulaire(frm){
        for(i = 0 ; i < frm.elements['nom[]'].length; i++){
          if (frm.elements['nom[]'][i].value == "")
            frm.elements['nom[]'][i].value = "undefined";
          if (frm.elements['prenom[]'][i].value == "")
            frm.elements['prenom[]'][i].value = "undefined";
          if (frm.elements['courriel[]'][i].value == "")
            frm.elements['courriel[]'][i].value = "@";
          if (frm.elements['membre[]'][i].checked == false){
            frm.elements['membre[]'][i].value = "0";
            frm.elements['membre[]'][i].checked = true;
          }            
          if (frm.elements['ext_tel[]'][i].value == "")
            frm.elements['ext_tel[]'][i].value = "0";
        }
        return true;
      }
      
    </script>
  </head>
  <body onload="initChamps()">
    <form id="frmMembre" action="membre.php" method="post" onsubmit="return validerFormulaire(this);">
      <table cellpadding="0" cellspacing="0" align="center">
      <tr><td>
        <a href="membre_ajout_csv.php">Importer depuis un fichier csv</a>
        <table cellpadding="0" cellspacing="0" id="tbl_membre" >
          <tr><th>
            Nom
          </th><th>
            Pr&eacute;nom
          </th><th>
            Courriel
          </th><th>
            Membre
          </th><th>
            Ext
          </th><th>
            Action
          </th></tr>
          <tr id="membre" style="display:none"><td>
            <input type="text" name="nom[]" size ="30" disabled="disabled" />
          </td><td>
            <input type="text" name="prenom[]" size ="30" disabled="disabled" />
          </td><td>
            <input type="text" name="courriel[]" size ="30" value="@grics.qc.ca" disabled="disabled" />
          </td><td align="center">
            <input type="checkbox" name="membre[]" value="1" disabled="disabled" />
          </td><td>
            <input type="text" name="ext_tel[]" size ="4" disabled="disabled" />
          </td>
          <td>
            <!-- Ce bloc doit rester ensemble pour que la validation JS fonctionne -->
            <input type="hidden" disabled="disabled" name="id[]" value="new" 
            /><input type="hidden" disabled="disabled" name="effacer[]" value="0" 
            /><img src="img/modifier.png" style="display:inline" onclick="modifier(this.form,this.parentNode.parentNode)"  
            /><img src="img/supprimer.png" onclick="supprimer(this.form,this.parentNode.parentNode,this.previousSibling.previousSibling.previousSibling)" 
            />
          </td></tr>
        </table>
      </td></tr>
      <tr><td>
        <div align="right" ><button onclick="ajouterChamp('new','','','@grics.qc.ca','',0,true)" type="button">+</button>
        </div>
        <div align="center"><input type="hidden" name="action" value="editer_membre" /><br />
          <button type="submit">Appliquer</button><br />
          <br />
          <a href="index.php">Retour</a>
        </div>
      </td></tr>      
      </table>
      
    </form>
  </body>
</html>